home *** CD-ROM | disk | FTP | other *** search
/ EnigmA Amiga Run 1996 February / EnigmA AMIGA RUN 04 (1996)(G.R. Edizioni)(IT)[!][issue 1996-02][Skylink CD III].iso / earcd / util2 / erp13.lha / ERP13.doc < prev   
Text File  |  1995-10-01  |  8KB  |  205 lines

  1. EasyRequestPatch V1.3 by Chris Hodges
  2. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  3.  
  4. Introduction
  5. ~~~~~~~~~~~~
  6. A friend of mine once asked me, if I could write a little program for
  7. his BBS that would cancel all the system-requesters that may appear,
  8. as his harddisk brought up read/write errors which were not really
  9. existant.
  10.  
  11. So this is my first attempt for such a patch. I thought somebody had
  12. already invented a program like this, but none of the asked sysops
  13. could help.
  14.  
  15. The patch will kill any requester that matches a pattern given in a
  16. config file. Other requesters will not be harmed at all.
  17.  
  18. I tried to make this program as secure and efficient as possible, and
  19. I think this program is.
  20.  
  21. Requirements
  22. ~~~~~~~~~~~~
  23. EasyRequestPatch needs Kick 2.04 or higher and about 14 KB of memory.
  24.  
  25. Usage
  26. ~~~~~
  27. Run >NIL: ERP >>logfile [configfile] [QUIT]
  28.  
  29. As you can see, the program does not unhook itself. The config file
  30. must be specified if you install the patch, to remove the patch
  31. again, ERP QUIT is sufficient. All normal cli output can be
  32. redirected into a log file.
  33.  
  34. Configuration
  35. ~~~~~~~~~~~~~
  36. An example configuration file has been included in the archive.
  37.  
  38. The configuration file is a normal AmigaDOS ascii-text. It may *NOT*
  39. contain other line seperators than linefeeds (no CRs allowed!).
  40.  
  41. Empty lines and characters after a semicolon are ignored.
  42.  
  43. A configuration line looks like this:
  44.  
  45. pattern,(delay,gadgetnum,retries)
  46. or
  47. pattern,(delay,gadgetnum,retries),(delay,gadgetnum,retries),... etc.
  48.  
  49. The pattern string may contain any normal dos jokers. Use quotemarks
  50. where required. After the pattern you have to enter at least one
  51. group containing three defining values. You can define up to five
  52. such groups. delay is used to specify the time to pass before ERP
  53. answers the requester with the given gadget number. These delays
  54. have to be entered in units of 1/50 secs.
  55.  
  56. This action will be repeated until the requester shuts up or the
  57. number of retries has been overridden. If this happens, the next
  58. group will be taken for the requester, or if it already has been the
  59. last group, the requester will pop up as usually.
  60.  
  61. The gadgets in each requester are placed in ascending order from 1 to
  62. N-1, whereas N represents the total amount of gadgets in the dialogue
  63. box. The last gadget (often 'Cancel') is always gadget number 0.
  64.  
  65. There are few 'special' gadgetnumbers:
  66.  
  67. -1: Is used to behave as if an IDCMP event has occurred (often this
  68.     has the same result as clicking on the 'Retry' gadget.
  69.  
  70. -2: Just waits the amount of time you give with the delay
  71.     instruction.
  72.  
  73. -3: Flashes the display and beeps.
  74.  
  75. -4: Resets the computer after the given delay. Please note that this
  76.     delay should be at least 5 seconds (=250 VBLs), to ensure that
  77.     all disk activity has been stopped.
  78.  
  79. -5: Like -4, but kills the exec base to avoid a guru meditation on
  80.     bootup.
  81.  
  82. Note that the patterns are proccessed in that order they have been
  83. entered into. There can be as many pattern definitions as you like.
  84.  
  85. Notes
  86. ~~~~~
  87. Due to the dynamic linked lists used in this program, it could happen
  88. that this program fragmentates your memory. Therefore I use reversed
  89. memory allocation to avoid little scattered memory blocks.
  90.  
  91. These linked lists are required to distinguish between different
  92. requester coming from different tasks. As there is no possibility to
  93. check whether a requester has been killed successfully (i.e the
  94. program is satisfied with the result and does not opens the requester
  95. again), the program reserves some memory to save some information
  96. about the requester. If the same requester appears within ten seconds
  97. ERP acts according to the group behaviour. Otherwise the memory is
  98. freed and the old requester will be forgotten.
  99.  
  100. History
  101. ~~~~~~~
  102. V1.3 (01-Oct-95):
  103. ~~~~~~~~~~~~~~~~~
  104. - No stack problems anymore. Now uses it's own stack for the patch
  105.   routine.
  106.  
  107. V1.2 (25-Aug-95):
  108. ~~~~~~~~~~~~~~~~~
  109. - Crashed on MC68000 due to one (!) accidentially used 68020
  110.   instructions. Fixed.
  111. - Not enough stack will pop up the requester now.
  112. - Added stack checking. Now it cannot crash anymore due to too few
  113.   stack. Minimum stack required for pattern matching: 1500 bytes.
  114. - Moved the pattern token creation to the config parsing, so the
  115.   patch has become a little big faster.
  116. - The bug with the Ctrl-C key doesn't appear anymore.
  117.  
  118. V1.1 (28-Jul-95):
  119. ~~~~~~~~~~~~~~~~~
  120. - Since there were problems with read write errors, I've set the
  121.   maximum quantum up again to 10 seconds.
  122. - Fixes some little bugs which caused the requester to be forgotten
  123.   too early.
  124. - The fixes didn't help at all. Seems as if read/write errors lock
  125.   up the dos output routines, so I have added a new linked list
  126.   containing the output strings so they can be printed by the main
  127.   program. This allows me to use buffered string printing again.
  128.   Now it finally *should* run correctly.
  129. - Those little annoying bugs... logical mistake locked the output
  130.   buffer list during output so the requester hung again. Fixed using
  131.   another little buffer. If it now doesn't run, I'll give it up.
  132.  
  133. V1.0 (26-Jul-95):
  134. ~~~~~~~~~~~~~~~~~
  135. - The logfile was a little bit faulty due to the mixed usage of
  136.   buffered and non-buffered writing. This has been fixed now.
  137. - Changed the main loop quantum from 1 VBL delay to 10 VBLs. This
  138.   will reduce the cpu usage.
  139. - Changed the requester-timeout to two seconds instead of one.
  140. - Modified the parser to check for more errors.
  141. - Increased the general buffers a bit.
  142. - Strange things seem to happen: The last program opening a
  143.   requester, will get the control-c signal passed through. No clue
  144.   why this happens and how to prevent it. Please use 'ERP Quit'
  145.   instead of the Ctrl-C key.
  146. - Added the wait and reset events.
  147. - Added the beep and hard reset events.
  148.  
  149. V1.0ß (25-Jul-95):
  150. ~~~~~~~~~~~~~~~~~~
  151. - First release. Works quite well.
  152.  
  153. Copyright notice
  154. ~~~~~~~~~~~~~~~~
  155. EasyRequestPatch (ERP) and it's documentation are Copyright © 1995
  156. by Chris Hodges. All rights reserved.
  157.  
  158. Disclaimer
  159. ~~~~~~~~~~
  160. EasyRequestPatch has proven to be stable in everyday use. The author
  161. is not responsible for any loss of data, damages to software or
  162. hardware that may result directly or indirectly from the use of this
  163. program. The author reserves the right to make changes to the
  164. software or documentation without notice.
  165.  
  166. Shareware note
  167. ~~~~~~~~~~~~~~
  168. This program is shareware, this means that you can copy it freely as
  169. long as you don't ask any more money for it than a nominal fee for
  170. copying. If you want to distribute this program you must keep this
  171. document with it. This program cannot be used for commercial purposes
  172. without written permission from the author.
  173.  
  174. None of the files of the ERP package may be modified or left out
  175. without permission of the author. Crunching or archiving is allowed
  176. only if none of the ERP files get modified by it. Adding BBS adverts
  177. or similar to such an archive is forbidden.
  178.  
  179. Moreover, it is forbidden to use ERP following conditions:
  180.  
  181. - For construction, development, creation or testing of weapons or
  182.   any other types of arms.
  183. - Your name is Marc Stachel (better known as Charlie/KF) or
  184.   Florian Graßinger (Mirage/KF).
  185.  
  186. ERP may not be included in archives containing the mailbox program
  187. 'FastCall' or 'Prometheus' nor in archives with indirect or direct
  188. Krypton Force productions.
  189.  
  190. If you use this program regularily, the author would appreciate any
  191. donation you could give him. Especially SysOps could register this
  192. program, as they really may need ERP for his BBS.
  193.  
  194. Contact address
  195. ~~~~~~~~~~~~~~~
  196. Any mails or donations to:
  197.  
  198. Chris Hodges                    Account: 359 68 63
  199. Kennedystr. 8                   BLZ    : 700 530 70
  200. D-82178 Puchheim                Bank   : Sparkasse Fürstenfeldbruck
  201. Germany
  202. Tel.: 089/8005856
  203. Email: chris@sixpack.pfalz.org 
  204.  
  205.